/*
 * Copyright 2019 Amazon.com, Inc. or its affiliates. All rights reserved.
 *
 * AMAZON PROPRIETARY/CONFIDENTIAL
 *
 * You may not use this file except in compliance with the terms and
 * conditions set forth in the accompanying LICENSE.TXT file. This file is a
 * Modifiable File, as defined in the accompanying LICENSE.TXT file.
 *
 * THESE MATERIALS ARE PROVIDED ON AN "AS IS" BASIS. AMAZON SPECIFICALLY
 * DISCLAIMS, WITH RESPECT TO THESE MATERIALS, ALL WARRANTIES, EXPRESS,
 * IMPLIED, OR STATUTORY, INCLUDING THE IMPLIED WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT.
 */

/*******************************************************************************
 * IOT On-Target Unit Test Board Config
 * @File: test_iot_config.h
 * @Brief: File for define board configuation fro IOT HAL test
 *
 ******************************************************************************/

#pragma once

/* Typical test configuration */

/* UART */
#define UART_TEST_SET 1

/* FLASH */
#define FLASH_TEST_SET 1

/* WATCHDOG */
#define WATCHDOG_TEST_SET 0

/* RTC */
#define RTC_TEST_SET 0

/* GPIO */
/*
 * Test general case, testCaseIndex used to pass gpio test config info
 * bits 0-7 : port
 * bit 8    : direction, 0 - input, 1 - output
 * bit 9    : IRQ, 0 - non IRQ, 1 - IRQ
 * bit 10   : value, 0 - low, 1 - high, only valid for output case where bit 8 = 1
 * example  : testCaseIndex = 513 ( 0x201 ), input for port 1 with IRQ
 *            testCaseIndex = 1282 ( 0x502 ), output for port 2 with high
 */
#define GPIO_TEST_SET 1

/* TIMER */
#define TIMER_TEST_SET 0

/* ADC */
#define ADC_TEST_SET 0
#define ADC_TEST_COMPONENT 3

/* RESET */
#define RESET_TEST_SET 0

/* PERFCOUNTER */
#define PERFCOUNTER_TEST_SET 0

/* PWM */
#define PWM_TEST_SET 0

#define IOPCTL_PIO_ANAMUX_DI 0x00u        /*!<@brief Analog mux is disabled */
#define IOPCTL_PIO_FULLDRIVE_DI 0x00u     /*!<@brief Normal drive */
#define IOPCTL_PIO_FUNC1 0x01u            /*!<@brief Selects pin function 1 */
#define IOPCTL_PIO_FUNC3 0x03u            /*!<@brief Selects pin function 1 */
#define IOPCTL_PIO_FUNC4 0x04u            /*!<@brief Selects pin function 4 */
#define IOPCTL_PIO_INBUF_DI 0x00u         /*!<@brief Disable input buffer function */
#define IOPCTL_PIO_INBUF_EN 0x40u         /*!<@brief Enables input buffer function */
#define IOPCTL_PIO_INV_DI 0x00u           /*!<@brief Input function is not inverted */
#define IOPCTL_PIO_PSEDRAIN_DI 0x00u      /*!<@brief Pseudo Output Drain is disabled */
#define IOPCTL_PIO_PULLDOWN_EN 0x00u      /*!<@brief Enable pull-down function */
#define IOPCTL_PIO_PUPD_DI 0x00u          /*!<@brief Disable pull-up / pull-down function */
#define IOPCTL_PIO_SLEW_RATE_NORMAL 0x00u /*!<@brief Normal mode */


/* I2C */
#define I2C_TEST_SET 0
//Test on light sensor

/* SPI */
#define SPI_TEST_SET 0

/* POWER */
#define POWER_TEST_SET 0

/* SDIO */
#define SDIO_TEST_SET 0

/* TEMP SENSOR */
#define TEMP_SENSOR_TEST_SET 0

/* BATTERY */
#define BATTERY_TEST_SET 0

/* EFUSE */
#define EFUSE_TEST_SET 0

